//快速排序代码
#define LEN 10
#include <stdio.h>

void Qsort(int str[], int left, int right)
{
	int i, j, temp, flag;
	i = left;
	j = right;
	flag = str[(i + j) / 2];
	while(i < j)
	{
		while(str[i] <= flag)  i++;
		while(str[j] >= flag)  j--;
		if(i < j) 
		{
			temp = str[i];
			str[i] = str[j];
			str[j] = temp;
			i++; j--;                     //交换完后，i、j顺序移动，相等时可以顺利进行	
		}
	}
	Qsort(str, 0, i);
	Qsort(str, j, right);
}

void main()
{ //主函数内的调用测试
	printf("请输入5个测试数：");
	int n, i;
	int tstr[LEN];                 //检测数组长度: n = sizeof(tstr) / sizeof(tstr[0])
	for(i = 0; i < 5; i++)
	{
		scanf("%d", &tstr[i]);
	}
	Qsort(tstr, 0, 4);
	printf("排序结果：");
	for(i = 0; i < LEN; i++)
	{
		printf("%d ", tstr[i]);
	}
}
